anchor.diff:          {noreply, State}
      end.
   
  -handle_info({'EXIT', Pid, _Reason}, #state{busy = Busy, free = Free, waiting = Waiting, callers = Callers} = State) ->
  +handle_info({'EXIT', Pid, _Reason}, State) ->
  +    #state{
  +        url = Url,
  +        busy = Busy,
  +        free = Free,
  +        waiting = Waiting,
  +        callers = Callers
  +    } = State,
       demonitor_client(Callers, Pid),
       case Free -- [Pid] of
       Free ->
  
positive.code:     {stop, normal, ok, State}.
  
  
  handle_cast({release_worker, Worker}, #state{waiting = Waiting, callers = Callers} = State) ->
      demonitor_client(Callers, Worker),
      case is_process_alive(Worker) andalso
          lists:member(Worker, State#state.busy) of
  
negative.code:     {ok, State}.
  
  
  handle_call(get_worker, From, State) ->
      #state{
          waiting = Waiting,
          callers = Callers,
          url = Url,
          limit = Limit,
          busy = Busy,
          free = Free
      } = State,
      case length(Busy) >= Limit of
      true ->
          {noreply, State#state{waiting = queue:in(From, Waiting)}};
  