anchor.diff:    send({counter, H, Delta, Samplerate}),
     send({counter, Stats, Delta, Samplerate});
   send({counter, [], _, _}) -> {ok, "Success."};
  +
   send({timer, [H|Stats], Delta, Samplerate}) ->
     send({timer, H, Delta, Samplerate}),
     send({timer, Stats, Delta, Samplerate});
   send({timer, [], _, _}) -> {ok, "Success."};
  +
  +send({gauge, [H|Stats], Reading}) ->
  +  send({gauge, H, Reading}),
  +  send({gauge, Stats, Reading});
  +send({gauge, [], _}) -> {ok, "Success."};
   
   % functions for single stats
   send({counter, Stat, Delta, Samplerate}) when Samplerate < 1.0, is_atom(Stat) ->
  
positive.code: -module(statsd).
  % Meta information
  -author("Daniel Schauenberg <d@unwiredcouch.com>").
  % defines
  -define(HOST, "localhost").
  -define(PORT, 8125).
  % exports
  -export([increment/1,increment/2,increment/3,
           decrement/1, decrement/2, timing/2,
           timing/3]).
  
  %
  % API functions
  
negative.code:   end;
  
  send({timer, Stat, Time, _}) ->
    send_udp_message(?HOST, ?PORT, io_lib:format("~p:~p|ms", [Stat, Time]));
  
  send({gauge, Stat, Reading}) ->
    send_udp_message(?HOST, ?PORT, io_lib:format("~p:~p|g", [Stat, Reading])).
  
  %
  % Raw UDP send message function
  