anchor.diff:        Orddict1 :: orddict(),
         Orddict2 :: orddict().
   
  -store(Key, New, [{K,_}=E|Dict]) when Key < K ->
  -    [{Key,New},E|Dict];
  +store(Key, New, [{K,_}|_]=Dict) when Key < K ->
  +    [{Key,New}|Dict];
   store(Key, New, [{K,_}=E|Dict]) when Key > K ->
       [E|store(Key, New, Dict)];
   store(Key, New, [{_K,_Old}|Dict]) ->		%Key == K
  
positive.code:       Orddict1 :: orddict(),
        Orddict2 :: orddict().
  
  update(Key, _, Init, [{K,_}=E|Dict]) when Key < K ->
      [{Key,Init},E|Dict];
  update(Key, Fun, Init, [{K,_}=E|Dict]) when Key > K ->
      [E|update(Key, Fun, Init, Dict)];
  update(Key, Fun, _Init, [{_K,Val}|Dict]) ->		%Key == K
  
negative.code:       Orddict1 :: orddict(),
        Orddict2 :: orddict().
  
  append_list(Key, NewList, [{K,_}|_]=Dict) when Key < K ->
      [{Key,NewList}|Dict];
  append_list(Key, NewList, [{K,_}=E|Dict]) when Key > K ->
      [E|append_list(Key, NewList, Dict)];
  append_list(Key, NewList, [{_K,Old}|Dict]) ->		%Key == K
  