anchor.diff:  
   cascade(Bucket, Prev, Period, Step) ->
       Node = node(),
  -    PrevTab = table_name(Node, Bucket, Prev),
  -    NextTab = table_name(Node, Bucket, Period),
  +    PrevTab = table(Node, Bucket, Prev),
  +    NextTab = table(Node, Bucket, Period),
       {atomic, ok} = mnesia:transaction(
                        fun () ->
                                case last_chunk(PrevTab, Step) of
  
positive.code:     list_to_tuple([stat_entry, TS | List]).
  
  
  %% @doc Truncate a timestamp to the nearest multiple of N seconds.
  trunc_ts(TS, N) ->
      TS - (TS rem (N*1000)).
  
  
  %% @doc Generate a suitable name for the per-bucket gen_server.
  
negative.code: 
  %% @doc Get the latest samples for a given interval from the archive
  latest(Period, Node, Bucket) when is_atom(Node) ->
      {atomic, Result} = mnesia:transaction(
                           fun () ->
                                   Tab = table(Node, Bucket, Period),
                                   Key = mnesia:last(Tab),
                                   hd(mnesia:read(Tab, Key))
                           end),
      Result;
  latest(Period, Nodes, Bucket) when is_list(Nodes), is_list(Bucket) ->
      misc:pmap(fun (Node) ->
                        {Node, latest(Period, Node, Bucket)}
                end, Nodes, length(Nodes)).
  
  
  latest(Period, Node, Bucket, N) when is_atom(Node), is_list(Bucket) ->
      walk(table(Node, Bucket, Period), N);
  latest(Period, Nodes, Bucket, N) when is_list(Nodes), is_list(Bucket) ->
      misc:pmap(fun (Node) ->
                        {Node, latest(Period, Node, Bucket, N)}
                end, Nodes, length(Nodes)).
  
  
  latest(Period, Nodes, Bucket, Step, N) when is_list(Nodes) ->
      misc:pmap(fun (Node) ->
                        {Node, latest(Period, Node, Bucket, Step, N)}
                end, Nodes, length(Nodes));
  latest(Period, Node, Bucket, Step, N) when is_atom(Node) ->
      resample(table(Node, Bucket, Period), Step, N).
  
  
  latest_all(Period, Bucket) ->
  