anchor.diff:  -spec handle_cast(term(), #state{}) ->
       {noreply, #state{}}.
   
  +handle_cast({update_timer, Time}, #state{timer=Timer}=State) ->
  +    nklib_util:cancel_timer(Timer),
  +    handle_info({timeout, none, timer}, State#state{time=Time});
  +
   handle_cast(Msg, State) -> 
       lager:error("Module ~p received unexpected cast ~p", [?MODULE, Msg]),
       {noreply, State}.
  
positive.code:     gen_server:call(?MODULE, get_pending).
  
  
  
  %% ===================================================================
  %% gen_server
  
negative.code: -spec handle_info(term(), #state{}) ->
      {noreply, #state{}}.
  
  handle_info({timeout, _, timer}, #state{time=Time}=State) -> 
      proc_lib:spawn(
          fun() -> 
              Now = nklib_util:timestamp(),
              Last = ets:prev(nklib_store_ord, {ttl, Now, 0}),
              delete_expired_iter(Last)
          end),
      Timer = erlang:start_timer(Time, self(), timer),
      {noreply, State#state{timer=Timer}};
  
  handle_info(Info, State) -> 
      lager:warning("Module ~p received unexpected info: ~p", [?MODULE, Info]),
  