anchor.diff:  
   -define(TRUNC_FREQ, 10).
   -define(RETRIES, 10).
  --define(TIMEOUT, 5000).
   
   -record(state, {bucket}).
   
  --export([start_link/1,
  -         latest/3, latest/4, latest/5,
  -         latest_all/2, latest_all/3, latest_all/4]).
  +-export([archives/0,
  +         start_link/1,
  +         table/2]).
   
   -export([code_change/3, init/1, handle_call/3, handle_cast/2, handle_info/2,
            terminate/2]).
  
positive.code: 
  start_link(Bucket) ->
      gen_server:start_link({local, server(Bucket)}, ?MODULE, Bucket, []).
  
  
  %% @doc Get the latest samples for a given interval from the archive
  latest(Period, Node, Bucket) when is_atom(Node) ->
      gen_server:call({server(Bucket), Node}, {latest, Period, Bucket});
  latest(Period, Nodes, Bucket) when is_list(Nodes), is_list(Bucket) ->
      R = {Replies, _} = gen_server:multi_call(Nodes, server(Bucket),
                                               {latest, Period, Bucket},
                                               ?TIMEOUT),
      log_bad_responses(R),
      Replies.
  
  latest(Period, Node, Bucket, N) when is_atom(Node), is_list(Bucket) ->
      gen_server:call({server(Bucket), Node}, {latest, Period, Bucket, N});
  latest(Period, Nodes, Bucket, N) when is_list(Nodes), is_list(Bucket) ->
      R = {Replies, _} = gen_server:multi_call(Nodes, server(Bucket),
                                               {latest, Period, Bucket, N},
                                               ?TIMEOUT),
      log_bad_responses(R),
      Replies.
  
  
  latest(Period, Node, Bucket, Step, N) when is_atom(Node) ->
      gen_server:call({server(Bucket), Node}, {latest, Period, Bucket, Step, N});
  latest(Period, Nodes, Bucket, Step, N) when is_list(Nodes) ->
      R = {Replies, _} = gen_server:multi_call(Nodes, server(Bucket),
                                               {latest, Period, Bucket, Step, N},
                                               ?TIMEOUT),
      log_bad_responses(R),
      Replies.
  
  
  latest_all(Period, Bucket) ->
      latest(Period, ns_node_disco:nodes_wanted(), Bucket).
  
  
  latest_all(Period, Bucket, N) ->
      latest(Period, ns_node_disco:nodes_wanted(), Bucket, N).
  
  
  latest_all(Period, Bucket, Step, N) ->
      latest(Period, ns_node_disco:nodes_wanted(), Bucket, Step, N).
  
  
  %%
  
negative.code: %% @doc Convert a list of values from stat_to_list back to a stat entry.
  list_to_stat(TS, List) ->
      list_to_tuple([stat_entry, TS | List]).
  
  
  %% @doc Generate a suitable name for the per-bucket gen_server.
  