         for pair in pairs {
             results += Utils.pairiteration(pair.left, pair.right, threshold)
         }
-// TODO: remove duplicates
+        // TODO: remove duplicates
         //        results = results.filter({(v,i) in
-//            return results.index(of: v) == i
-//        })
+        //            return results.index(of: v) == i
+        //        })
         return results
     }
-
+    
     struct ShapeIntersection {
         var c1: BezierCurve
         var c2: BezierCurve
-//        var s1: Shape
-//        var s2: Shape
+        //        var s1: Shape
+        //        var s2: Shape
         var intersection: [Intersection]
     }
     

        return ( min:min, max: max )
    }
    
    
    static func approximately(_ a: BKFloat,_ b: BKFloat, precision: BKFloat = epsilon) -> Bool {
        return abs(a-b) <= precision
    }

    static func between(_ v: BKFloat,_ m: BKFloat,_ M: BKFloat) -> Bool {
        return (m <= v && v <= M) || Utils.approximately(v, m) || Utils.approximately(v, M)
    }

        return Utils.lli8(x1,y1,x2,y2,x3,y3,x4,y4)
    }
    
    //    static func lli(_ v1: BKFloat,_ v2: BKFloat) -> BKPoint? {
    //        return Utils.lli4(v1,v1.c,v2,v2.c)
    //    }
    
    static func getminmax(list: [BKFloat], computeDimension: (BKFloat) -> BKFloat) -> (min: BKFloat, max: BKFloat) {
        var min = BKFloat.infinity
        var max = -BKFloat.infinity
