anchor.diff:        io:format("Wrong thread ~p~n", [Thr]),
         {reply, hang, S0};
       Other ->
  -      io:format(user, "Other = ~p, W = ~p~nData1 = ~p~n", [Other, W, S0#state.data]),
  +      io:format("Other = ~p, W = ~p~nData1 = ~p~n", [Other, W, S0#state.data]),
         {reply, hang, S0}
     end.
   
  
positive.code:     {calc, W} ->
        case V1 of
  	V1 when is_list(V1) ->
  	  io:format(user, "Inserting {~p,~p} = {i,~p,[]}~n", [X,KD,V1]),
  	  Tr = tdtree:insert({X,KD,{i,V1,[]}}, S0#state.data);
  	V1 ->
  	  io:format(user, "Inserting {~p,~p} = ~p~n", [X,KD,V1]),
  	  Tr = tdtree:insert({X,KD,V1}, S0#state.data)
        end,
        S1 = S0#state{data = Tr, ck = S0#state.ck + 1},
  
negative.code: 	true ->
  	  %% FIXME
  	  %% Threads can be <= to others which is wrong, but it works...
  	  %% io:format("Thread ~p is less than or equal to ~p~n", [W1, W0]),
  	  {reply, hang, S0};
  	false ->
  	  {reply, {V, S0#state.ck}, S0}
  