anchor.diff:          {UTC, V} = lists:last(Data),
           if
             LastUTC == undefined orelse UTC > LastUTC ->
  -            [Pid ! {pulse, Tag, UTC, V} || {Pid, Tag} <- Pids],
  +            [Pid ! {pulse, Tag, UTC, V} || {Pid,Tag,_} <- Pids],
               {Query, UTC, Pids};
             true ->
               Entry
           end                 
       end
     end, Clients),
  -  Delay = calc_delay(1000, T1),
  +  {_,Delay} = pulse:current_second(),
     erlang:send_after(Delay, self(), tick),
     {noreply, State#subscriptions{clients = Clients1}};
   
   
   
   handle_info({'DOWN', _, _, Pid, _}, #subscriptions{clients=Clients0}=State) ->
  -  Clients = [{Query, UTC, lists:delete(Pid, Pids)} 
  -             || {Query, UTC, Pids} <- Clients0, 
  -             Pids =/= [Pid]],
  +  Clients1 = [{Query, UTC, lists:keydelete(Pid,1,Pids)} 
  +             || {Query, UTC, Pids} <- Clients0],
  +  Clients = [C || {Pids,_,_}=C <- Clients1, length(Pids) > 0],
     {noreply, State#subscriptions{clients=Clients}}.
  -
  -
  -calc_delay(Desired, T1) ->
  -  case Desired - timer:now_diff(erlang:now(), T1) div 1000 of
  -    D when D < 0 -> 1;
  -    D -> D
  -  end.
positive.code:   }).
  
  subscribe(Query, Tag) ->
    gen_server:cast(?MODULE, {subscribe, self(), Query, Tag}).
  
  
  unsubscribe(_) ->
    {error, not_implemented}.
  
  
  start_link() -> 
  
negative.code: -module(pulsedb_realtime).
  -export([subscribe/2, unsubscribe/1]).
  -export([start_link/0, init/1, terminate/2, handle_info/2, handle_call/2]).
  
  -record(subscriptions, 
   {
  