anchor.diff:                          val = {Time, _},
                           replies=Replies,
                           entity=Entity}) ->
  -    MObj = merge(SD, Replies),
  +    MObj = merge_metrics(Replies),
       case needs_repair(MObj, Replies) of
           true ->
               repair(Time, Entity, MObj, Replies),
  
positive.code: %%%===================================================================
  %%% Internal Functions
  %%%===================================================================
  
  merge(#state{system = event}, Events) ->
      merge_events(Events);
  merge(#state{system = metric}, Metrics) ->
  
negative.code:             merge_(Ds, Ress)
      end.
  
  merge_([DH | DT], [R | _] = Ress) ->
      case lists:any(different(R), Ress) of
          true ->
              lager:error("[merge] Resolution mismatch: ~p /= ~p",
                          [R, Ress]),
              not_found;
          false ->
              Res = lists:foldl(fun merge_compressed/2, decompress(DH), DT),
              {R, Res}
      end.
  
  -dialyzer({nowarn_function, merge_compressed/2}).
  merge_compressed(Acc, New) ->
      mmath_bin:merge(Acc, decompress(New)).
  
  %% Snappy :(
  -dialyzer({nowarn_function, decompress/1}).
  -spec decompress(binary()) -> binary().
  decompress(D) ->
      case snappy:is_valid(D) of
          true ->
  