anchor.diff:  
   -spec call_module(atom(), list()) -> state().
   call_module(Fun, Args) ->
  -    apply(get_lb_module(), Fun, Args). 
  +    apply(get_lb_module(), Fun, Args).
   
   -spec get_lb_module() -> atom() | failed.
   get_lb_module() ->
  
positive.code: %%%%%%%%%%%%%%%%%%%%%%%% Monitoring values %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  
  %% @doc Called by db process to initialize monitors
  -spec init_db_monitors(Id::?RT:key(), Range::intervals:interval()) -> ok.
  init_db_monitors(Id, Range) ->
      case monitor_db() of
          true ->
              MonitorRes = config:read(lb_active_monitor_resolution),
              History = config:read(lb_active_monitor_history),
              HistogramSize = config:read(lb_active_histogram_size),
              HistogramType =
                  case intervals:in(0, MyRange) andalso MyRange =/= intervals:all() of
                      true ->
                          NormFun = fun(Val) ->
                                       Val - Id - 1; %% TODO calculate id
                                       Val - 
                                    end,
                          {histogram, HistogramSize, NormFun, InverseFun} %% TODO off by one. Actually MyId - 1
                      _ -> {histogram, HistogramSize}
                  end,
                  case NormalizationFactor of
                      0 -> {histogram, HistogramSize};
                      N -> {histogram, HistogramSize, N}
                  end,
              Reads  = rrd:create(MonitorRes * 1000, History + 1, HistogramType),
              Writes = rrd:create(MonitorRes * 1000, History + 1, HistogramType),
  
negative.code:     unknown;
  get_value_type(Value, _Type) when is_number(Value) ->
      Value;
  get_value_type(Value, {histogram, _Size}) ->
      histogram:get_num_inserts(Value);
  get_value_type(Value, {histogram, _Size, _NormFun, _InverseFun}) ->
      histogram_normalized:get_num_inserts(Value).
  
  %% @doc returns the weighted average of a list using decreasing weight
  