anchor.diff:  		AttrsMatch :: [{Attribute, Match}] | '_',
   		Attribute :: byte(),
   		Match :: term() | '_',
  -		Result :: [term()].
  +		Result :: {Continuation2, Events} | {eof, Events} | {error, Reason},
  +		Continuation2 :: disk_log:continuation(),
  +		Events :: [acct_event()],
  +		Reason :: term().
   %% @doc Query accounting log events with filters.
  +%%
  +%% 	The first time called `Continuation' should have the value `start'.
   %%
   %% 	Events before `Start' or after `Stop', or which do not match
   %% 	the `Protocol' or one of the `Types', are ignored.
  
positive.code: 		{Cont, [_ | T]}, Acc) ->
  	auth_query(Start, End, Protocol, Types, ReqAttrsMatch,
  			RespAttrsMatch, {Cont, T}, Acc);
  auth_query(Start, End, Protocol, Types, ReqAttrsMatch,
  		RespAttrsMatch, {Cont, []}, Acc) ->
  	auth_query(Start, End, Protocol, Types, ReqAttrsMatch,
  			RespAttrsMatch, disk_log:chunk(?AUTHLOG, Cont), Acc).
  %% @hidden
  auth_query1(Start, End, Protocol, Types, '_', RespAttrsMatch,
  		{Cont, Chunk}, Acc, '_') ->
  
negative.code: %%
  %% 	`Protocol', `Types', or `AttrsMatch' may be '_' which matches any value.
  %% 
  %% 	Returns a new `Continuation' and a list of matching accounting events.
  %% 	Successive calls use the new `Continuation' to read more events.
  %%
  acct_query(Continuation, {{_, _, _}, {_, _, _}} = Start,
  		End, Protocol, Types, AttrsMatch) ->
  	Seconds = calendar:datetime_to_gregorian_seconds(Start) - ?EPOCH,
  	acct_query(Continuation, Seconds * 1000, End, Protocol, Types, AttrsMatch);
  acct_query(Continuation, Start, {{_, _, _}, {_, _, _}} = End,
  		Protocol, Types, AttrsMatch) ->
  	Seconds = calendar:datetime_to_gregorian_seconds(End) - ?EPOCH,
  	acct_query(Continuation, Start, Seconds * 1000 + 999, Protocol, Types, AttrsMatch);
  acct_query(Continuation, Start, End, Protocol, Types, AttrsMatch)
  		when is_integer(Start), is_integer(End) ->
  	acct_query(Start, End, Protocol, Types, AttrsMatch,
  			disk_log:chunk(?ACCTLOG, Continuation), []).
  
  %% @hidden
  acct_query(_Start, _End, _Protocol, _Types, _AttrsMatch, eof, Acc) ->
  	{eof, lists:reverse(Acc)};
  acct_query(_Start, _End, _Protocol, _Types, _AttrsMatch, {error, Reason}, _Acc) ->
  	{error, Reason};
  acct_query(Start, End, '_', '_', AttrsMatch,
  		{Cont, [{TS, _, _, _, _, _, _} | _] = Chunk}, Acc)
  		when TS >= Start, TS =< End ->
  