anchor.diff:  %%
   -spec calc_nci( LabeledGraph :: digraph() ) -> NCI :: integer().
   calc_nci(LabeledGraph)->
  -    C = get_communities(LabeledGraph),
  +    C = ?LOGDURATION(get_communities(LabeledGraph)),
   
       %% At this point in the code C refers to an unordered of community
       %% names with associated sizes
  
positive.code:     %% Using the example C above,  SC = [{c,55},{a,10},{f,3}].
  
      %% We now call a two parameter function 
      NCI = calc_nci(SC,0),
      %% NCI computation results in a one to big, maybe?
      %% XXX requires more study.
      NCI.
  
negative.code:     {EPs, IAs} = compute_communities(G),
      {EPs, IAs, LeafCount, CommunitySizes};
  communities(G, _, _) ->
      CommunitySizes = ?LOGDURATION(comm_sizes(G)),
      {EPs, IAs} = compute_communities(G),
      {EPs, IAs, dict:new(), CommunitySizes}.
  
  compute_communities(G) ->
      % list of endpooints per community
      EPs = ?LOGDURATION(comm_endpoints(G)),
      IAs = ?LOGDURATION(comm_interactions(G)),
      {EPs, IAs}.
  
  comm_sizes(G) ->
  