anchor.diff:      end,
       KeyCache = orddict:store({M,F,Arg,KeyData},MF_Res,KeyCache0),
       {next_state,active,
  -     StateData#state{mapcache=orddict:store(BKey,KeyCache,Cache)},?TIMEOUT};
  -active(merk_nodiff, StateData) ->
  -    hometest(StateData);
  -active({merk_diff,_TargetNode,_DiffList}, StateData) ->
  -    hometest(StateData);
  -active({resolved_diffobj,_K}, StateData) ->
  -    hometest(StateData).
  +     StateData#state{mapcache=orddict:store(BKey,KeyCache,Cache)},?TIMEOUT}.
   
   %% @private
   do_get(FSM_pid, BKey, ReqID,
  
positive.code:     end.
  
  %% @private
  get_merkle(_State=#state{mod=Mod,modstate=ModState}) ->
      KeyList = Mod:list(ModState),
      Merk0 = merkerl:build_tree([]),
      get_merk(Mod,ModState,KeyList,Merk0).
  %% @private
  get_merk(_Mod,_ModState,[],Merk) -> Merk;
  get_merk(Mod,ModState,[BKey|KeyList],Merk) ->
      V = Mod:get(ModState,BKey), % normally, V = {ok,BinObj}
      get_merk(Mod,ModState,KeyList,merkerl:insert({BKey,erlang:phash2(V)},Merk)).
  
  %% @private
  get_vclocks(KeyList,_State=#state{mod=Mod,modstate=ModState}) ->
      [{BKey, get_vclock(BKey,Mod,ModState)} || BKey <- KeyList].
  %% @private
  
negative.code: active({get, FSM_pid, BKey, ReqID}, StateData) ->
      do_get(FSM_pid, BKey, ReqID, StateData),
      {next_state,active,StateData,?TIMEOUT};
  active({list_bucket, FSM_pid, Bucket, ReqID},
         StateData=#state{mod=Mod,modstate=ModState,idx=Idx}) ->
      do_list_bucket(FSM_pid,ReqID,Bucket,Mod,ModState,Idx),
  