anchor.diff:  terms2bins([]) ->
       [].
   
  -check_bytes_list([B | Bs], Bs0) when is_binary(B) ->
  -    check_bytes_list(Bs, Bs0);
  -check_bytes_list([], Bs0) ->
  +ensure_binary_list(Bs) ->
  +    ensure_binary_list(Bs, Bs).
  +
  +ensure_binary_list([B | Bs], Bs0) when is_binary(B) ->
  +    ensure_binary_list(Bs, Bs0);
  +ensure_binary_list([], Bs0) ->
       Bs0;
  -check_bytes_list(_, Bs0) ->
  -    check_bytes_list(Bs0).
  -
  -check_bytes_list([B | Bs]) when is_binary(B) ->
  -    [B | check_bytes_list(Bs)];
  -check_bytes_list([B | Bs]) ->
  -    [list_to_binary(B) | check_bytes_list(Bs)];
  -check_bytes_list([]) ->
  +ensure_binary_list(_, Bs0) ->
  +    make_binary_list(Bs0).
  +
  +make_binary_list([B | Bs]) ->
  +    [ensure_binary(B) | make_binary_list(Bs)];
  +make_binary_list([]) ->
       [].
   
  -check_bytes(Binary) when is_binary(Binary) ->     
  +ensure_binary(Binary) when is_binary(Binary) ->
       Binary;
  -check_bytes(Bytes) -> 
  +ensure_binary(Bytes) ->
       list_to_binary(Bytes).
   
   %%-----------------------------------------------------------------
  
positive.code:       Log :: log(),
        Bytes :: bytes().
  balog(Log, Bytes) ->
      notify(Log, {balog, check_bytes(Bytes)}).
  
  -spec balog_terms(Log, ByteList) -> notify_ret() when
        Log :: log(),
        ByteList :: [bytes()].
  balog_terms(Log, Bytess) ->
      Bs = check_bytes_list(Bytess, Bytess),
      notify(Log, {balog, Bs}).
  
  -type close_error_rsn() ::'no_such_log' | 'nonode'
  
negative.code:                                                  is_list(A) ->
      {ok, {M, F, A}};
  check_head({head, Head}, external) ->
      case catch ensure_binary(Head) of
  	{'EXIT', _} ->
  	    {error, {badarg, head}};
  	_ ->
  