anchor.diff:      end;
   
   handle_call({get_proc, Lang}, {Client, _} = From, State) ->
  -    IterFun = fun(Proc0, _Acc) ->
  -        Proc = Proc0#proc{client = erlang:monitor(process, Client)},
  -        ets:insert(State#state.tab, Proc),
  -        {stop, Proc}
  +    IterFun = fun(Proc, _Acc) ->
  +        {stop, assign_proc(State#state.tab, Client, Proc)}
       end,
       try iter_procs(State#state.tab, Lang, IterFun, nil) of
       {not_found, _} ->
  
positive.code: 
  
  
  iter_procs(Tab, Lang, Fun, Acc) when is_list(Lang) ->
      iter_procs(Tab, list_to_binary(Lang), Fun, Acc);
  iter_procs(Tab, Lang, Fun, Acc) ->
      Pattern = #proc{lang=Lang, client=nil, _='_'},
      MSpec = [{Pattern, [], ['$_']}],
  
negative.code: 
  handle_info({'EXIT', _, {ok, Proc0, {Client,_} = From}}, State) ->
      link(Proc0#proc.pid),
      Proc = assign_proc(State#state.tab, Client, Proc0),
      gen_server:reply(From, {ok, Proc, get_query_server_config()}),
      {noreply, State};
  
  handle_info({'EXIT', Pid, Reason}, State) ->
  