anchor.diff:    rx(Socket).
   
   read_prefix() ->
  -  <<Req:4/binary, BN/binary>> = BP = case io_read(12) of
  -    P when is_binary(P) -> P;
  -    P when is_list(P)   -> list_to_binary(P)
  -  end,
  +  <<Req:4/binary, BN/binary>> = BP = io_read(12),
     N = list_to_integer(binary_to_list(BN), 16),
     io:format(standard_error, "Req: ~s, Len: ~w, prefix: ~s -> ", [Req, N, BP]),
     {BP, N}.
  
positive.code:       Sender(Orig),
        format_log("done");
      <<Req:4/binary, _/binary>>
      when Req =:= "CDIR"; Req =:= "NAME";
           Req =:= "FILE"; Req =:= "LINK" ->
        Data = io_read(Len),
        Sender(list_to_binary([Orig, Data])),
        format_log("done");
  
negative.code:   Data = case Orig of
      <<"ARGC", _/binary>> -> <<>>;
      <<Req:4/binary, _/binary>>
      when Req == "ARGV";
           Req == "DOTI" -> io_read(Len)
    end,
    ok = Sender(list_to_binary([Orig, Data])),
    format_log("done").
  