anchor.diff:      ?OUT("kover(~p): ~p~n", [Key, Result]),
       Result.
   
  --spec kmodify(node(), target(), key(), fun(), term(), timeout()) -> std_reply().
  +-spec kmodify(node(), target(), key(), modify_fun(), term(), timeout()) -> std_reply().
   kmodify(Node, Target, Key, ModFun, Default, Timeout) ->
       F = fun ?MODULE:do_kmodify/4,
       Result = riak_ensemble_router:sync_send_event(Node, Target, {put, Key, F, [ModFun, Default]}, Timeout),
  
positive.code: do_kmodify(Obj, NextSeq, State, [ModFun, Default]) ->
      Value = get_value(Obj, Default, State),
      Vsn = {epoch(State), NextSeq},
      New = ModFun(Vsn, Value),
      case New of
          failed ->
              failed;
  
negative.code: 
  -type target() :: pid() | ensemble_id().
  -type maybe_peer_id() :: undefined | peer_id().
  -type modify_fun() :: fun() | {module(), atom(), term()}.
  
  -record(state, {id            :: peer_id(),
                  ensemble      :: ensemble_id(),
  