anchor.diff:  
   -behaviour(gen_server).
   -export([start/0, start_link/0]).
  +-export([stop/0]).
   -export([init/1, handle_call/3, handle_cast/2, handle_info/2, terminate/2, code_change/3]).
   
  --record(state, {last}).
  +-record(state, {last, tref}).
   
   start() ->
       gen_server:start({local, ?MODULE}, ?MODULE, [], []).
  
positive.code: handle_info(_Info, State) ->
      {noreply, State}.
  
  terminate(_Reason, _State) ->
      ok.
  
  code_change(_Vsn, State, _Extra) ->
      {ok, State}.
  
negative.code:     gen_server:start_link({local, ?MODULE}, ?MODULE, [], []).
  
  init([]) ->
      {ok, TRef} = timer:send_interval(timer:seconds(1), doit),
      {ok, #state{last = stamp(), tref = TRef}}.
  
  stop() ->
      gen_server:call(?MODULE, stop).
  
  handle_call(stop, _From, State) ->
      {stop, shutdown, stopped, State};
  handle_call(_Req, _From, State) ->
      {reply, {error, badrequest}, State}.
  
  