anchor.diff:          Array.foldBack (fun (a,b,c,d) (accA,accB,accC,accD) -> a::accA, b::accB, c::accC, d::accD) arr ([],[],[],[])
           |> fun (ra,rb,rc,rd) -> Array.ofList ra,Array.ofList rb,Array.ofList rc,Array.ofList rd
       
  -    let private unzip4List li =
  +    let private unzip4 li =
           let length = Seq.length li
           let la = Array.zeroCreate length
           let lb = Array.zeroCreate length
  
positive.code:                 //a',e',gcv,c' 
                  a',e',(gcv,var),c' 
                          )
              |> unzip4List
              |> fun (a,e,gcvvar,c) -> 
                  let gcv = gcvvar |> Array.map fst
                  let var = gcvvar |> Array.map snd
  
negative.code:                 let lambdafin = lambd
                  ((efin,gcvmin),afin,lambdafin,cfin)
                      )
          |> unzip4
          |> fun (x,afin,lambdafin,c) -> ((x |> Array.unzip),afin,lambdafin,c)
          |> fun tmp -> 
              let e = tmp |> fun (a,b,c,d) -> fst a
  