anchor.diff:  init([]) ->
       {ok, #state{vnode_gets=spiraltime:fresh(),
                   vnode_puts=spiraltime:fresh(),
  +                vnode_gets_total=0,
  +                vnode_puts_total=0,
  +                node_gets_total=0,
  +                node_puts_total=0,
                   get_fsm_time=slide:fresh(),
                   put_fsm_time=slide:fresh()}}.
   
  
positive.code: 
  %% @spec update(Stat::term(), integer(), state()) -> state()
  %% @doc Update the given stat in State, returning a new State.
  update(vnode_get, Moment, State) ->
      spiral_incr(#state.vnode_gets, Moment, State);
  update(vnode_put, Moment, State) ->
      spiral_incr(#state.vnode_puts, Moment, State);
  update({get_fsm_time, Microsecs}, Moment, State) ->
      slide_incr(#state.get_fsm_time, Microsecs, Moment, State);
  update({put_fsm_time, Microsecs}, Moment, State) ->
      slide_incr(#state.put_fsm_time, Microsecs, Moment, State);
  update(_, _, State) ->
      State.
  
  
negative.code: -export([init/1, handle_call/3, handle_cast/2, handle_info/2,
           terminate/2, code_change/3]).
  
  -record(state,{vnode_gets,vnode_puts,vnode_gets_total,vnode_puts_total,
                 node_gets_total, node_puts_total,
                 get_fsm_time,put_fsm_time}).
  
  %% @spec start_link() -> {ok,Pid} | ignore | {error,Error}
  