anchor.diff:  %% 	`Protocol', `Types', `ReqAttrsMatch' `ResAttrsMatch'  may be
   %% 	'_' which matches any value.
   %% 
  -%% 	Returns a list of matching authentication events.
  -%%
  -auth_query({{_, _, _}, {_, _, _}} = Start, End, Protocol, Types,
  -		ReqAttrsMatch, RespAttrsMatch) ->
  +%% 	Returns a new `Continuation' and a list of matching access events.
  +%% 	Successive calls use the new `Continuation' to read more events.
  +%%
  +%%
  +auth_query(Continuation, {{_, _, _}, {_, _, _}} = Start, End, Protocol,
  +		Types, ReqAttrsMatch, RespAttrsMatch) ->
   	Seconds = calendar:datetime_to_gregorian_seconds(Start) - ?EPOCH,
  -	auth_query(Seconds * 1000, End, Protocol, Types,
  +	auth_query(Continuation, Seconds * 1000, End, Protocol, Types,
   			ReqAttrsMatch, RespAttrsMatch);
  -auth_query(Start, {{_, _, _}, {_, _, _}} = End, Protocol, Types,
  -		ReqAttrsMatch, RespAttrsMatch) ->
  +auth_query(Continuation, Start, {{_, _, _}, {_, _, _}} = End, Protocol,
  +		Types, ReqAttrsMatch, RespAttrsMatch) ->
   	Seconds = calendar:datetime_to_gregorian_seconds(End) - ?EPOCH,
  -	auth_query(Start, Seconds * 1000 + 999, Protocol, Types,
  +	auth_query(Continuation, Start, Seconds * 1000 + 999, Protocol, Types,
   			ReqAttrsMatch, RespAttrsMatch);
  -auth_query(Start, End, Protocol, Types, ReqAttrsMatch, RespAttrsMatch)
  +auth_query(Continuation, Start, End, Protocol, Types,
  +		ReqAttrsMatch, RespAttrsMatch)
   		when is_integer(Start), is_integer(End) ->
  -	auth_query(Start, End, Protocol, Types, ReqAttrsMatch, RespAttrsMatch,
  -			disk_log:chunk(?AUTHLOG, start), []).
  +	auth_query(Start, End, Protocol, Types, ReqAttrsMatch,
  +			RespAttrsMatch, disk_log:chunk(?AUTHLOG, Continuation), []).
   
   %% @hidden
   auth_query(_Start, _End, _Protocol, _Types,
   		_ReqAttrsMatch, _RespAttrsMatch, eof, Acc) ->
  -	lists:reverse(Acc);
  +	{eof, lists:reverse(Acc)};
   auth_query(_Start, _End, _Protocol, _Types,
   		_ReqAttrsMatch, _RespAttrsMatch, {error, Reason}, _Acc) ->
  -	exit(Reason);
  +	{error, Reason};
   auth_query(Start, End, '_', '_', ReqAttrsMatch, RespAttrsMatch,
   		{Cont, [{TS, _, _, _, _, _, _, _, _} | _] = Chunk}, Acc)
   		when TS >= Start, TS =< End ->
  
positive.code: 			{error, Reason}
  	end.
  
  -spec acct_log(Protocol, Server, Type, Attributes) -> Result
  	when
  		Protocol :: radius | diameter,
  
negative.code: 		{Cont, [_ | T]}, Acc) ->
  	auth_query(Start, End, Protocol, Types, ReqAttrsMatch,
  			RespAttrsMatch, {Cont, T}, Acc);
  auth_query(_, _, _, _, _, _, {Cont, []}, Acc) ->
  	{Cont, lists:reverse(Acc)}.
  %% @hidden
  auth_query1(Start, End, Protocol, Types, '_', RespAttrsMatch,
  		{Cont, Chunk}, Acc, '_') ->
  