anchor.diff:  
                               let getLabel vertex =
                                   Dictionary.getValue vertex vertexNewLabel
  -   
  +                            
  +                            //let edgeListToSum :(int*int*float)[] =
  +                            //    [|
  +                            //        for vertex in verti do
  +                            //            graph.GetConnectedEdges vertex
  +                            //    |]
  +                            //    |> Array.concat
  +                            //    |> Array.map(fun (s,t,w) -> if s=t then (s,t,(w/2.)) else (s,t,w))
  +
  +                            //let edgesToLabelEdges :(int*int*float)[] =
  +                            //    edgeListToSum
  +                            //    |> Array.map (fun (s,t,w) -> ((getLabel s),(getLabel t),w))
  +
                               let edgesToLabelEdges :(int*int*float)[] = 
  -                                let result = Array.zeroCreate (graph.AdjacencyGraph()).Count
  -                                let mutable i = 0
  -                                for group in (graph.AdjacencyGraph()) do
  -                                    result.[i] <- group.Value
  -                                    i <- i+1
  -                                result
  +                                //let result = Array.zeroCreate (graph.AdjacencyGraph()).Count
  +                                //let mutable i = 0
  +                                //for group in (graph.AdjacencyGraph()) do
  +                                //    result.[i] <- group.Value
  +                                //    i <- i+1
  +                                //result
  +                                //|> Array.concat
  +                                [|
  +                                    for vertex in verti do
  +                                        graph.GetConnectedEdges vertex
  +                                |]
                                   |> Array.concat
                                   |> Array.map (fun (s,t,w) -> ((getLabel s),(getLabel t),w))
   
  
positive.code:                 louvainCycleInPlace newG randomized modularityIncreaseThreshold nbOfLoops modulartiy           
  
              if nbOfMoves < 2 || ((nbOfLoops>0) && (newModularity<modulartiy)) then 
              
                  g
  
              else 
  
negative.code:                                 result.[i] <- (s,t,w)
                                  i <- i + 1
                              result
                          
                              
  
                          nbOfMoves,                                    
                          ArrayAdjacencyGraph(
                              (vert),
  