anchor.diff:      {match,[{N,1}]};
   srch(<<_:8,T/binary>>,X,N) ->
       srch(T,X,N+1).
  +
   get_line_doit(Prompt, Port, Q, Accu, Enc) -> 
       case queue:is_empty(Q) of
   	true ->
  
positive.code: 
  %% common case, reduces execution time by 20%
  prompt(_Port, '') -> ok;
  
  prompt(Port, Prompt) ->
      Encoding = get(encoding),
      put_port(wrap_characters_to_binary(io_lib:format_prompt(Prompt, Encoding),
                                         unicode, Encoding),
               Port).
  
  %% Convert error code to make it look as before
  err_func(io_lib, get_until, {_,F,_}) ->
  
negative.code:                     get_line(Prompt, Port, Q, Acc, Enc);
  		{io_request,From,ReplyAs,Request} when is_pid(From) ->
  		    do_io_request(Request, From, ReplyAs, Port, queue:new()), 
                      case prompt(Port, Prompt) of
                          error ->
                              {error,{error,get_line},Q};
                          ok ->
                              get_line(Prompt, Port, Q, Acc, Enc)
                      end;
  		{'EXIT',From,What} when node(From) =:= node() ->
  		    {exit,What}
  	    end;
  