anchor.diff:  	    [get_generalised_form(ASTTab, RangeTab, C)||C<-Cs]
       end;
   examine_clone_sets([C|Cs],MinFreq, SimiScore, ASTTab, VarTab, RangeTab, Pid, Num) ->
  -    ?debug("\nChecking the ~pth clone candidate...\n", [Num]),
  +    ?debug("\nChecking the ~pth clone candidate...", [Num]),
       Res =examine_a_clone_set(C, MinFreq, SimiScore, ASTTab, VarTab, RangeTab,Pid),
       add_new_clones(Pid, Res),
       examine_clone_sets(Cs, MinFreq, SimiScore, ASTTab, VarTab, RangeTab, Pid, Num+1).
  
positive.code:     refac_util:add_category(refac_util:add_fun_define_locations(AnnAST0, Info)).
   
  
  
negative.code: 			ets:insert(RangeTab, {{MFA, S1, E2}, R}),
  			{MFA, S1, E2}
  		  end ||R<-Rs]
  	 end,	
      F= fun({Ranges, {_Len, Freq}}) ->
  	       case Freq>=MinFreq of 
  		   true -> 
  		       NewRanges0 = [F0(R)|| R <- Ranges],
  		       NewRanges = zip(NewRanges0),
  		       [{F1(Rs),{length(hd(Rs)), Freq}}|| Rs <-NewRanges];
  		   _ ->[]
  	       end
         end, 
      Res =[lists:reverse(F(C)) || C<-Cs],
      remove_duplicated_clones(Res,[]).
  
  
  remove_duplicated_clones([], Acc) ->
       lists:reverse(Acc);
  remove_duplicated_clones([Cs|T], Acc) ->
      Cs1 =[{Ranges, {Len, Freq}}|| {Ranges, {Len, Freq}}<-Cs,
  		not(lists:any(fun(Cs2) ->
  				      lists:any(fun({Ranges1, {Len1, Freq1}}) ->
  							(Len==Len1) andalso (Freq =<Freq1) 
  							    andalso  (Ranges--Ranges1==[])
  						end, Cs2)
  			      end, Acc))],
      remove_duplicated_clones(T, [Cs1|Acc]).
  			  
  
  
  
  zip(L) ->[nested_tuple_to_list(E)||E<-zip_1(L)].
  zip_1([]) ->[];
  zip_1([L]) ->L;
  