anchor.diff:  
   -spec checkout(host(), port_number(), SSL::boolean(),
                  max_connections(), connection_timeout()) ->
  -        {ok, port()} | retry_later | no_socket.
  +        {ok, socket()} | retry_later | no_socket.
   checkout(Host, Port, Ssl, MaxConn, ConnTimeout) ->
       Lb = find_lb({Host,Port,Ssl}, {MaxConn, ConnTimeout}),
       gen_server:call(Lb, {checkout, self()}, infinity).
  
positive.code: drop_and_cancel(Socket, [H|T]) ->
      [H | drop_and_cancel(Socket, T)].
  
  -spec cancel_timer(reference(), port()) -> ok.
  cancel_timer(TimerRef, Socket) ->
      case erlang:cancel_timer(TimerRef) of
          false ->
  
negative.code:     end.
  
  %% Called when we're done and the socket can still be reused
  -spec checkin(host(), port_number(), SSL::boolean(), Socket::socket()) -> ok.
  checkin(Host, Port, Ssl, Socket) ->
      case find_lb({Host,Port,Ssl}) of
          {error, undefined} ->
  