anchor.diff:  -define(TABLE, ?PROMETHEUS_SUMMARY_TABLE).
   -define(SUM_POS, 3).
   -define(COUNTER_POS, 2).
  +-define(WIDTH, 16).
   
   %%====================================================================
   %% Metric API
  
positive.code: value(Registry, Name, LabelValues) ->
    MF = prometheus_metric:check_mf_exists(?TABLE, Registry, Name, LabelValues),
    DU = prometheus_metric:mf_duration_unit(MF),
    case  ets:lookup(?TABLE, {Registry, Name, LabelValues}) of
      [{_Key, Count, Sum}] -> {Count,
                               prometheus_time:maybe_convert_to_du(DU, Sum)};
      [] -> undefined
    end.
  
  %%====================================================================
  
negative.code: %% @end
  observe(Registry, Name, LabelValues, Value) when is_integer(Value) ->
    try
      ets:update_counter(?TABLE, key(Registry, Name, LabelValues),
                         [{?COUNTER_POS, 1}, {?SUM_POS, Value}])
    catch error:badarg ->
        insert_metric(Registry, Name, LabelValues, Value, fun observe/4)
  