anchor.diff:  
   
   decompose_clone_pair_by_simi_score_3(ClonePairs, Thresholds)->
  -    MinLen = Thresholds#threshold.min_len,
       SimiScoreThreshold = Thresholds#threshold.simi_score,
  -    case length(ClonePairs)< MinLen of 
  +    case not clone_pair_above_min_size(ClonePairs, Thresholds) of 
   	true ->
   	    [];
   	false ->
  
positive.code: 	{add_clone,  Clones} ->
  	    clone_check_loop(Clones++Cs);
  	{get_clones, From, _ASTTab} ->
  	    %% refac_io:format("Num of Cs:\n~p\n", [length(Cs)]),
  	    %% refac_io:format("Cs:\n~p\n", [[element(1,C)||C<-Cs]]),
  	    Cs0=remove_sub_clones(Cs),
  	    %% refac_io:format("Num of Cs0:\n~p\n", [length(Cs0)]),
  	    Cs1=[{AbsRanges, Len, Freq, AntiUnifier}||
  		    {_, {Len, Freq}, AntiUnifier,AbsRanges}<-Cs0],
  	    From ! {self(), Cs1},
  
negative.code: 			   SubStr <- [lists:sublist(IndexStr, S, E - S + 1)]]),
      Cs2 = refac_code_search_utils:remove_sub_clones([{R, Len, Freq} || {R, {Len, Freq}} <- Cs1]),
      NewData = lists:append([F(Elem) || Elem <- Data]),
      get_clones_in_ranges([{R, {Len, Freq}} || {R, Len, Freq} <- Cs2],
  			 NewData, MinLen, MinToks, MinFreq).
     
  %% This is necessary when the min_len is very small, e.g 1.
  remove_duplicates_in_ranges({Ranges, {Len, _Freq}}) ->
      Ranges1=sets:to_list(sets:from_list(Ranges)),
      Freq1 = length(Ranges1),
      {Ranges1, {Len, Freq1}}.
  
  strip_a_clone({Ranges, {Len, F}}, Str, MinLen, MinFreq) ->
      {Str1, Str2} = lists:splitwith(fun(C) ->C==$# orelse C ==$, end, Str),
      {Str21, Str22} = lists:splitwith(fun(C) ->C==$# orelse C ==$, end, lists:reverse(Str2)),
  