anchor.diff:  
   new_metric_dir([Path], NewMetric) ->
       Name = NewMetric#metric_file.name,
  -    [{Path, #metric_dir{name=Path,
  -                        metrics=orddict:from_list([{Name, NewMetric}]),
  -                        dirs=orddict:new()}}];
  +    #metric_dir{name=Path,
  +                metrics=orddict:from_list([{Name, NewMetric}]),
  +                dirs=orddict:new()};
   
   new_metric_dir([Path | Paths], NewMetric) ->
  +    NewDir = new_metric_dir(Paths, NewMetric),
  +    Insert = [{NewDir#metric_dir.name, NewDir}],
       #metric_dir{name=Path,
                   metrics=orddict:new(),
  -                dirs=orddict:from_list(new_metric_dir(Paths, NewMetric))}.
  +                dirs=orddict:from_list(Insert)}.
   
   
   find_metrics(Paths, Dir) ->
  
positive.code:          }).
  
  -record(metric_dir, {
            name :: nonempty_string(),
            metrics :: orddict:orddict(),
            dirs :: orddict:orddict()
           }).
  
  %%%===================================================================
  %%% API
  
negative.code: %%--------------------------------------------------------------------
  init([]) ->
      DataDir = statser_config:get_data_dir(),
      gen_server:cast(self(), prepare),
      {ok, #state{metrics=?EMPTY_METRIC_DIR, data_dir=DataDir}}.
  
  %%--------------------------------------------------------------------
  %% @private
  