anchor.diff:              |> Array.map (fun x -> x / float samples.Length)
   
       let doneThreshold = 0.001;
  -    let checkKeepGoing (centroids : float [][]) (newCentroids : float[][]) dimensionRanges =
  +    let checkDone (centroids : float [][]) (newCentroids : float[][]) dimensionRanges =
           (centroids, newCentroids)
           ||> Seq.map2 (Seq.map2 (-))
           |> Seq.map (Seq.map2 (fun range delta -> abs (delta / range)) dimensionRanges)
           |> Seq.collect (id)
  -        |> Seq.exists (fun delta -> delta >= doneThreshold)
  +        |> Seq.forall (fun delta -> delta < doneThreshold)
          
   
       let displayCluster cluster =
  
positive.code:         let clusters  = getNewClusters samples centroids
          clusters |> Array.iter displayCluster
          let newCentroids = clusters |> Array.map getNewCentroid
          keepGoing <- checkKeepGoing centroids newCentroids dimRanges
          centroids <- newCentroids
          count <- count + 1
          printfn "Completed cycle:  %d" count
          printfn "===================="
  
      printfn "All done."; System.Console.ReadKey() |> ignore
      0
  
  //let mutable keepGoing = true
  //let mutable centroids = randomCentroids
  //let mutable count = 0
  //
  //while keepGoing do
  //    let clusters = samples |> Array.groupBy (fun sample -> selectNearestPoint sample.Vector centroids)   
  //    printfn ""
  //    clusters |> Array.iter displayCluster
  //    let newCentroids = clusters |> Array.map getNewCentroid
  //    keepGoing <- checkKeepGoing centroids newCentroids dimensionRanges
  //    centroids <- newCentroids
  //    count <- count + 1
  //    printfn "Completed cycle:  %d" count
  //    printfn "===================="
  //
  //printfn "All done."; System.Console.ReadKey() |> ignore
  //0
  
  
negative.code:         let centroids = [| for i in 1..count ->  getCentroid() |]
          centroids
  
  //    let getVeryDifferentCentroids centroids mins maxs=
  //        centroids |> Array.map (fun centroid ->
  //            (centroid, mins, maxs) |||> Array.map3 (fun value min max ->
  //                if value - min > max - value then min else max ))
  
      let classCount = 
          samples 
  